import hulppakket.SceneBuilder;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;


import test.TestMatrix;
import test.TestObjParser;
import test.TestPostProcessing;
import test.TestRasterizer;
import test.TestRaytracer;
import test.TestShading;
import utils.CgPanel;
import utils.Scene;

/**
 * The main entry point for this application.
 * @author Simon
 */
public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		testMatrix();
		//testRasterizer();
		//testRaytracer();
		//testObjParser();
		//testShading();
		//testPostProcessing();
	}
	
	private static void testPostProcessing()
	{
		TestPostProcessing test = new TestPostProcessing();
		test.testGodRays();
	}
	
	private static void testShading()
	{
		TestShading test = new TestShading();
		//test.testLambertianShading();
		//test.testLambertianShadingObj();
		//test.testAmbientLight();
		//test.testPhongShading();
		//test.testShadows();
		//test.testPointLight();
		test.testReflection();
		
		//test.testBug();
		
		//test.uberTest();
	}
	
	private static void testObjParser()
	{
		TestObjParser test = new TestObjParser();
		test.testParseBasicObj();
	}
	
	private static void testRaytracer()
	{
		TestRaytracer test = new TestRaytracer();
		//test.testHalfCube();
		//test.testSphere();
		//test.testImportedObj();
		test.testScene();
	}
	
	private static void testRasterizer()
	{
		TestRasterizer test = new TestRasterizer();
		//test.RenderOneTriangle();
		//test.RenderTwoAdjacentTriangles();		
		test.RenderTwoAdjacentTrianglesOnOffScreenPointLine();
	}

	private static void testMatrix()
	{
		TestMatrix test = new TestMatrix();
		//test.testMultiply();
		//test.testVectorInteraction();
		test.testTranslateObj();
	}
}
